import logging
from datetime import timedelta
from redis import StrictRedis


class Config:
    DEBUG = True  # 自定义配置类
    SQLALCHEMY_DATABASE_URI = "mysql://root:mysql@127.0.0.1:3306/info16"
    SQLALCHEMY_TRACK_MODIFICATIONS = False
    REDIS_HOST = '127.0.0.1' # redis 的ip
    REDIS_PORT = 6379 # redis 的　端口
    SESSION_TYPE = 'redis' #　session 存储的数据库类型
    SESSION_REDIS = StrictRedis(host=REDIS_HOST,port=REDIS_PORT) # 提供session存储使用的redis链接对象
    SESSION_USE_SIGNER = True # 对cookie 中保存的session　进行加密，（要使用app 的秘钥）
    SECRET_KEY = 'dFmNq565jv40bPoAYLnl+iRWqFfGI7KWC3cAzPUuLaH4mwlD56zHwR/PnHzYw5BZ'
    PERMANENT_SESSION_LIFETIME = timedelta(days=7) # 设置session 存储时间

    SQLALCHEMY_COMMIT_ON_TEARDOWN = True # 设置数据发生修改后自动提交


class DevelopConfig(Config): # 定义开发环境的配置
    DEBUG = True
    LOGLEVEL = logging.DEBUG


class ProductConfig(Config): # 定义生产环境的配置
    DEBUG = False
    LOGLEVEL = logging.ERROR


# 设置配置的字典
config_dict={
    'develop':DevelopConfig,
    'product':ProductConfig
}